1317963a8605bc3c411639068a340f907e2e906c,app/src/main/java/com/kyletung/doubanbookmovie/book/BookFragmentReaded.java,BookFragmentReaded,onCreateView,#LayoutInflater#ViewGroup#Bundle#,25
Before Change
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_book_readed, container, false);
}
After Change
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_book_readed, container, false);
//init recycler view
RecyclerView recyclerView = (RecyclerView) view.findViewById(R.id.fragment_book_readed_recycler);
adapter = new BookRecyclerAdapter();
manager = new LinearLayoutManager(getActivity());
recyclerView.setLayoutManager(manager);
recyclerView.setItemAnimator(new DefaultItemAnimator());
recyclerView.setAdapter(adapter);
//init swipe refresh layout
swipeRefreshLayout = (SwipeRefreshLayout) view.findViewById(R.id.fragment_book_readed_swipe);
swipeRefreshLayout.setColorSchemeResources(R.color.google_blue, R.color.google_red, R.color.google_green, R.color.google_yellow);
swipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
count = 0;
adapter.clear();
get();
}
});
//set scroll to last
recyclerView.setOnScrollListener(new RecyclerView.OnScrollListener() {
boolean isSlidingToLast = false;
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
if (newState == RecyclerView.SCROLL_STATE_IDLE) {
int lastVisibleItem = manager.findLastCompletelyVisibleItemPosition();
int totalItemCount = manager.getItemCount();
if (lastVisibleItem == (totalItemCount - 1) && isSlidingToLast) {
if (!swipeRefreshLayout.isRefreshing() && adapter.getItemCount() < total) {
swipeRefreshLayout.setRefreshing(true);
get();
}
}
}
}
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
if (dx > 0) {
isSlidingToLast = false;
} else {
isSlidingToLast = true;
}
}
});
//init when begin fragment
get();
swipeRefreshLayout.setRefreshing(true);
return view;
}
public void get() {